package com.fyzk.utils;

import android.util.Log;

import com.wf.domain.UrlDef;

/**
 * <p>
 * @mood
 * @description 日志管理工具类
 * @author 小先生阁下
 * @date 2017/8/7 0007 下午 4:12
 * </p>
 */
public class LogUtils {
    private static String TAG = "MyTest";
    private static boolean flag = UrlDef.isDebug;

    private LogUtils(){
        /* cannot be instantiated */
        throw new UnsupportedOperationException("cannot be instantiated");
    }

    /**
     * 打印verbose日志
     * @param msg 日志信息
     */
    public static void v(String msg) {
        if (flag) Log.v(TAG, msg);
    }

    /**
     * 打印verbose日志
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void v(String msg, Throwable throwable) {
        if (flag) Log.v(TAG, msg, throwable);
    }

    /**
     * 打印debug信息
     * @param msg 日志信息
     */
    public static void d(String msg) {
        if (flag) Log.d(TAG, msg);
    }

    /**
     * 打印debug信息
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void d(String msg, Throwable throwable) {
        if (flag) Log.d(TAG, msg, throwable);
    }

    /**
     * 打印information信息
     * @param msg 日志信息
     */
    public static void i(String msg) {
        if (flag) Log.i(TAG, msg);
    }

    /**
     * 打印information信息
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void i(String msg, Throwable throwable) {
        if (flag) Log.i(TAG, msg, throwable);
    }

    /**
     * 打印warn信息
     * @param msg 日志信息
     */
    public static void w(String msg) {
        if (flag) Log.w(TAG, msg);
    }

    /**
     * 打印warn信息
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void w(String msg, Throwable throwable) {
        if (flag) Log.w(TAG, msg, throwable);
    }

    /**
     * 打印error信息
     * @param msg 日志信息
     */
    public static void e(String msg) {
        if (flag) Log.e(TAG, msg);
    }

    /**
     * 打印error信息
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void e(String msg, Throwable throwable) {
        if (flag) Log.e(TAG, msg, throwable);
    }

    /**
     * 打印wtf信息
     * @param msg 日志信息
     */
    public static void wtf(String msg) {
        if (flag) Log.wtf(TAG, msg);
    }

    /**
     * 打印wtf信息
     * @param msg 日志信息
     * @param throwable 异常
     */
    public static void wtf(String msg, Throwable throwable) {
        if (flag) Log.wtf(TAG, msg, throwable);
    }

}
